Add a screenshot-exclusive mode that makes the screencast button
unreactive, and therefore disables screencasting. It doesn't change
the visibility of the button though, as that's done by the codepath
that checks if screencasting is supported.
This will be used by the D-Bus callback to take interactive
screenshots.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2999>
const UIMode = {
SCREENSHOT: 0,
SCREENCAST: 1,
+ SCREENSHOT_ONLY: 2,
};
export const ScreenshotUI = GObject.registerClass({
return;
this._castButton.checked = mode === UIMode.SCREENCAST;
+ this._castButton.reactive = mode !== UIMode.SCREENSHOT_ONLY;
if (!this.visible) {
// Screenshot UI is opening from completely closed state